package com.tfswx.fljdmxyy.service;

import com.tfswx.fljdmxyy.dto.gnjk.GnjkAddInputDTO;
import com.tfswx.fljdmxyy.dto.gnjk.GnjkAddOutputDTO;
import com.tfswx.fljdmxyy.dto.gnjk.GnjkDeleteInputDTO;
import com.tfswx.fljdmxyy.dto.gnjk.GnjkUpdateInputDTO;
import com.tfswx.fljdmxyy.query.gnjk.GnjkQueryParam;
import com.tfswx.fljdmxyy.query.gnjk.GnjkQueryResult;

import java.util.List;

/**
 * 功能接口业务接口
 *
 * @author: 陈涛
 * @date: 2022-11-11
 **/
public interface GnjkService {
    /**
     * 新增功能接口
     *
     * @param dto 新增功能接口入参
     * @return GnjkAddOutputDTO 新增功能接口出参
     */
    GnjkAddOutputDTO addGnfl(GnjkAddInputDTO dto);

    /**
     * 删除功能接口
     *
     * @param dto 删除功能接口入参
     * @return Boolean 删除功能接口出参
     */
    Boolean deleteGnjk(GnjkDeleteInputDTO dto);

    /**
     * 修改功能接口
     *
     * @param dto 修改功能接口入参
     * @return Boolean 修改功能接口出参
     */
    Boolean updateGnjk(GnjkUpdateInputDTO dto);

    /**
     * 查询功能接口
     *
     * @param param 查询功能接口入参
     * @return List<GnjkQueryResult> 查询功能接口出参
     */
    List<GnjkQueryResult> queryGnjk(GnjkQueryParam param);
}
